草庐IT

c++ - 结构与类

全部标签

go - fmt.Sscanf 用于结构

我有之前序列化为fmt.Sprintf("%+v",d)的数据,d是一个struct实例.有没有办法把它扫描回来?我在下面使用fmt.Sscanf()的天真尝试失败了(GoPlayground)。packagemainimport("fmt")typedatastruct{fint}funcmain(){x:=data{1}s:=fmt.Sprintf("%+v",x)varydatan,err:=fmt.Sscanf(s,"%+v",&y)fmt.Printf("s=%s,n=%d,err=%+v,y=%+v\n",s,n,err,y)}输出是:s={f:1},n=0,err=can

json - 在使用 MongoDB 将文档分配给 Go 中的结构之前如何转换文档?

我正在使用go和mongodb编写多语言API。我有一个mongodb文档,格式为:{_id:ObjectID(bla)"key":{"en":"Hello","es":"Hola"}}但是,API需要报告json格式:{_id:ObjectID(bla),"key":"Hola"}如果客户端发送语言header。有没有简单/有效的方法来做到这一点?我唯一可行的解​​决方案是制作两个单独的结构,然后将它们与一堆switch/case语句合并在一起,例如:varapiMyStructvarmgoMyMgoStructsession.DB("db").C("col").Find(nil).

xml - 无法在 Go 中正确解码/编码动态 XML 结构

我有一个描述XML模式的xsd,我正在尝试在go结构中编写这个xsd的表示,以便我能够基于这个模式编码/解码XML。这是我为重现我遇到的问题而编写的一些goplayground代码。https://play.golang.org/p/ktJOsCDyLW在架构中,标签video和web是动态的(因为它们都可以在media下出现不止一次,并且具有不同的里面的内容)。我尝试编写一个动态结构以及Unmarshaller/Marshaller接口(interface),如示例所示,我似乎能够执行解析,但它解码/编码内部内容不正确,忽略名称和URL列表,只采用一个元素每一个。我不确定这里的问题是

xml - 动态结构元素上的编码/xml 解码

我使用Golang处理epubs,我必须从cover.xhtml文件(或.opf文件中提到的任何文件)中获取封面图像。我的问题是Cover.xhtml文件中元素的动态结构。每个epub在Cover.xhtml文件上都有不同的结构。例如,另一个epubcover.xhtml文件我需要从这个文件中获取img标签的src属性。但我做不到。这是我的代码中处理解码cover.xhtml文件的部分typeCPSRCSstruct{Srcstring`xml:"src,attr"`}typeCPIMGSstruct{ImageCPSRCS`xml:"img"`}XMLContent,err=iout

go - 什么是 cgo 类型,相当于指向结构的 const 指针?

我在C中定义了一个外部函数://externvoidgoCallback(conststructlibvlc_event_t*,void*);在go中定义://exportgoCallbackfuncgoCallback(eventunsafe.Pointer,userDataunsafe.Pointer){log.Fatal("TODOgoCallback")}编译代码时出现类型冲突错误#github.com/tarrsalah/libvlc-goInfileincludedfrom$WORK/github.com/tarrsalah/libvlc-go/_obj/_cgo_expo

go - 如何写入 Go 中的 DIBits 结构?

我正在使用一个w32库来允许我使用Go语言进行窗口化。我不太确定如何处理unsafe.Pointer以允许我开始在像素缓冲区中设置像素值。我使用unsafe.Pointer,因为w32库希望我在CreateDIBSection函数中传递它。varpunsafe.Pointerbitmap:=w32.CreateDIBSection(srcDC,&bmi,w32.DIB_RGB_COLORS,&p,w32.HANDLE(0),0)该代码成功并为我提供了指向存储DIBBit的内存位置的指针。我如何使用它来写入值?p[idx]=0xff会给我一个错误typeunsafe.Pointerdoe

session - 在golang中将数组结构设置为 session

我使用的是github.com/ipfans/echo-session库。我可以在设置数组结构时保存session这是我的代码:保存sessiontypeStaffInforstruct{Login_idstringFamily_name_ccstringFirst_name_ccstringFamily_name_kanastringFirst_name_kanastringRole_idintPasswordstringMessage_invalid[]string}~~~session:=session.Default(c)session.Set("test",listStaff

oop - golang - 树结构抽象

我正在尝试编写一个树结构,其中每个节点都应该有一个id和父ref/id参数。通过扩展节点结构,您应该能够添加一些自定义参数(如标题、图标、颜色...)。它应该内联并稍后用mgo插入......您可以在下方或此处找到代码:https://play.golang.org/p/bbvs2iM3ri我试图避免向nodeExtension结构添加方法并通过节点结构共享它。但是,CreateNode方法仅获取节点数据,而不是包装结构。关于如何在不丢失自定义参数(本例中为描述)的情况下实现此算法的任何想法?谢谢packagemainimport("fmt")typeitemstruct{IDstri

c - 求和,数组构造和寻址的简洁二叉树

使用“sum”作为捷径进行任意计算。我有一个通过递归求和值对来从值列表中计算单个和的过程。未配对的值将被不变地提升到树上,直到可以配对为止。在进行了这种计算之后,我正在寻找平衡计算的最佳方法(即访问数组元素/节点所需的操作数)以及一维数组中所有节点的最简洁的编码(即无间隙,零值)(或重复值),并且最好没有额外的索引数组,该数组不能从简洁编码中轻松得出,因此必须将其与数组一起保存。尽管以下是简单的示例,但实际上,初始列表中的值数量可能非常大(2^47或更多)。例如,给定列表[1、2、3、4],该数组是微不足道的:[10、3、7、1、2、3、4],并很好地拆分为易于按节点寻址的行,或作为对

xml - 将 XML 解码为嵌入式结构

我有一个平面XML结构,我想将其解码为一个嵌入了一部分的结构。这可能吗?语法是什么,或者我可以编写什么自定义方法?在这个例子中,我用一个猜测来标记嵌套结构:xml:"",它被“encoding/xml”跳过。typeFloatHolderstruct{Valuefloat32`xml:"value"`}typepvstruct{XMLNamexml.Name`xml:"series"`Test1FloatHolder`xml:""`//doesnotpopulate:-(Test2FloatHolder`xml:"nested"`//populates}funcmain(){conte